table of contents
dotnet-new-sdk-templates(7) | .NET Documentation | dotnet-new-sdk-templates(7) |
NAME¶
dotnet-new-sdk-templates - .NET default templates for dotnet new
DESCRIPTION¶
When you install the .NET SDK (https://dotnet.microsoft.com/download), you receive over a dozen built-in templates for creating projects and files, including console apps, class libraries, unit test projects, ASP.NET Core apps (including Angular (https://angular.io/) and React (https://reactjs.org/) projects), and configuration files. To list the built-in templates, run the dotnet new list command:
-
dotnet new list
The following table shows the templates that come pre-installed with the .NET SDK. The default language for the template is shown inside the brackets. Click on the short name link to see the specific template options.
Templates | Short name | Language | Tags | Introduced |
Console Application | console | [C#], F#, VB | Common/Console | 1.0 |
Class library | classlib | [C#], F#, VB | Common/Library | 1.0 |
WPF Application | wpf | [C#], VB | Common/WPF | 3.0 (5.0 for VB) |
WPF Class library | wpflib | [C#], VB | Common/WPF | 3.0 (5.0 for VB) |
WPF Custom Control Library | wpfcustomcontrollib | [C#], VB | Common/WPF | 3.0 (5.0 for VB) |
WPF User Control Library | wpfusercontrollib | [C#], VB | Common/WPF | 3.0 (5.0 for VB) |
Windows Forms (WinForms) Application | winforms | [C#], VB | Common/WinForms | 3.0 (5.0 for VB) |
Windows Forms (WinForms) Class library | winformslib | [C#], VB | Common/WinForms | 3.0 (5.0 for VB) |
Worker Service | worker | [C#] | Common/Worker/Web | 3.0 |
Unit Test Project | mstest | [C#], F#, VB | Test/MSTest | 1.0 |
NUnit 3 Test Project | nunit | [C#], F#, VB | Test/NUnit | 2.1.400 |
NUnit 3 Test Item | nunit-test | [C#], F#, VB | Test/NUnit | 2.2 |
xUnit Test Project | xunit | [C#], F#, VB | Test/xUnit | 1.0 |
Razor Component | razorcomponent | [C#] | Web/ASP.NET | 3.0 |
Razor Page | page | [C#] | Web/ASP.NET | 2.0 |
MVC ViewImports | viewimports | [C#] | Web/ASP.NET | 2.0 |
MVC ViewStart | viewstart | [C#] | Web/ASP.NET | 2.0 |
Blazor Server App | blazorserver | [C#] | Web/Blazor | 3.0 |
Blazor Server App Empty | blazorserver-empty | [C#] | Web/Blazor | 7.0 |
Blazor WebAssembly App | blazorwasm | [C#] | Web/Blazor/WebAssembly | 3.1.300 |
Blazor WebAssembly App Empty | blazorwasm-empty | [C#] | Web/Blazor/WebAssembly | 7.0 |
ASP.NET Core Empty | web | [C#], F# | Web/Empty | 1.0 |
ASP.NET Core Web App (Model-View-Controller) | mvc | [C#], F# | Web/MVC | 1.0 |
ASP.NET Core Web App | webapp, razor | [C#] | Web/MVC/Razor Pages | 2.2, 2.0 |
ASP.NET Core with Angular | angular | [C#] | Web/MVC/SPA | 2.0 |
ASP.NET Core with React.js | react | [C#] | Web/MVC/SPA | 2.0 |
Razor Class Library | razorclasslib | [C#] | Web/Razor/Library/Razor Class Library | 2.1 |
ASP.NET Core Web API | webapi | [C#], F# | Web/Web API/API/Service/WebAPI | 1.0 |
ASP.NET Core API | webapiaot | [C#] | Web/Web API/API/Service | 8.0 |
ASP.NET Core gRPC Service | grpc | [C#] | Web/gRPC | 3.0 |
dotnet gitignore file | gitignore | Config | 3.0 | |
global.json file | globaljson | Config | 2.0 | |
NuGet Config | nugetconfig | Config | 1.0 | |
Dotnet local tool manifest file | tool-manifest | Config | 3.0 | |
Web Config | webconfig | Config | 1.0 | |
Solution File | sln | Solution | 1.0 | |
Protocol Buffer File | proto | Web/gRPC | 3.0 | |
EditorConfig file | editorconfig(#editorconfig) | Config | 6.0 |
Template options¶
Each template may have additional options available. To show the additional options available for the template use the --help option with the template name argument, for example: dotnet new console --help. In case the template supports multiple languages, this command will show help for the template in the default language. By combining it with the --language option, you can see the help for other languages: dotnet new console --help --language F#. The templates that ship with the .NET SDK have the following additional options:
console¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Available since .NET Core 3.0 SDK.
The following table lists the default values according to the SDK version you’re using:
SDK version | Default value |
7.0 | net7.0 |
6.0 | net6.0 |
3.1 | netcoreapp3.1 |
The ability to create a project for an earlier TFM depends on having that version of the SDK installed. For example, if you have only the .NET 7 SDK installed, then the only value available for --framework is net7.0. If you install the .NET 6 SDK the value net6.0 becomes available for --framework. If you install the .NET Core 3.1 SDK, netcoreapp3.1 becomes available, and so on. So by specifying --framework netcoreapp3.1 you can target .NET Core 3.1 even while running dotnet new in the .NET 6 SDK.
Alternatively, to create a project that targets a framework earlier than the SDK that you’re using, you might be able to do it by installing the NuGet package for the template. Common (https://www.nuget.org/packages?q=Microsoft.DotNet.Common.ProjectTemplates), web (https://www.nuget.org/packages?q=Microsoft.DotNet.Web.ProjectTemplates), and SPA (https://www.nuget.org/packages?q=Microsoft.DotNet.Web.Spa.ProjectTemplates) project types use different packages per target framework moniker (TFM). For example, to create a console project that targets netcoreapp1.0, run dotnet new install on Microsoft.DotNet.Common.ProjectTemplates.1.x.
- •
- --langVersion <VERSION_NUMBER>
Sets the LangVersion property in the created project file. For example, use --langVersion 7.3 to use C# 7.3. Not supported for F#. Available since .NET Core 2.2 SDK.
For a list of default C# versions, see Defaults.
- •
- --no-restore
If specified, doesn’t execute an implicit restore during project creation. Available since .NET Core 2.2 SDK.
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false. Available only for C#.
* * * * *
classlib¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Values: net7.0, net6.0, or netcoreapp3.1 to create a .NET Class Library or netstandard2.1 or netstandard2.0 to create a .NET Standard Class Library. The default value for .NET SDK 7.0.x is net7.0.
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --langVersion <VERSION_NUMBER>
Sets the LangVersion property in the created project file. For example, use --langVersion 7.3 to use C# 7.3. Not supported for F#. Available since .NET Core 2.2 SDK.
For a list of default C# versions, see Defaults.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
* * * * *
wpf, wpflib, wpfcustomcontrollib, wpfusercontrollib¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. For the .NET 6 SDK, the default value is net6.0. Available since .NET Core 3.1 SDK.
- •
- --langVersion <VERSION_NUMBER>
Sets the LangVersion property in the created project file. For example, use --langVersion 7.3 to use C# 7.3.
For a list of default C# versions, see Defaults.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
* * * * *
winforms, winformslib¶
- •
- --langVersion <VERSION_NUMBER>
Sets the LangVersion property in the created project file. For example, use --langVersion 7.3 to use C# 7.3.
For a list of default C# versions, see Defaults.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
* * * * *
worker, grpc¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. The default value for .NET 7 SDK is net7.0. Available since .NET Core 3.1 SDK.
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
mstest, xunit¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option available since .NET Core 3.0 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
The ability to create a project for an earlier TFM depends on having that version of the SDK installed. For example, if you have only the .NET 6 SDK installed, then the only value available for --framework is net6.0. If you install the .NET 5 SDK, the value net5.0 becomes available for --framework. If you install the .NET Core 3.1 SDK, netcoreapp3.1 becomes available, and so on. So by specifying --framework netcoreapp3.1 you can target .NET Core 3.1 even while running dotnet new in the .NET 6 SDK.
- •
- -p|--enable-pack
Enables packaging for the project using dotnet pack.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
* * * * *
nunit¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
The ability to create a project for an earlier TFM depends on having that version of the SDK installed. For example, if you have only the .NET 6 SDK installed, then the only value available for --framework is net6.0. If you install the .NET 5 SDK, the value net5.0 becomes available for --framework. If you install the .NET Core 3.1 SDK, netcoreapp3.1 becomes available, and so on. So by specifying --framework netcoreapp3.1 you can target .NET Core 3.1 even while running dotnet new in the .NET 6 SDK.
- •
- -p|--enable-pack
Enables packaging for the project using dotnet pack.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
* * * * *
page¶
- •
- -na|--namespace <NAMESPACE_NAME>
Namespace for the generated code. The default value is MyApp.Namespace.
- •
- -np|--no-pagemodel
Creates the page without a PageModel.
* * * * *
viewimports, proto¶
- •
- -na|--namespace <NAMESPACE_NAME>
Namespace for the generated code. The default value is MyApp.Namespace.
* * * * *
blazorserver¶
- •
- -au|--auth <AUTHENTICATION_TYPE>
The type of authentication to use. The possible values are:
- •
- None - No authentication (Default).
- •
- Individual - Individual authentication.
- •
- IndividualB2C - Individual authentication with Azure AD B2C.
- •
- SingleOrg - Organizational authentication for a single tenant.
- •
- MultiOrg - Organizational authentication for multiple tenants.
- •
- Windows - Windows authentication.
- •
- --aad-b2c-instance <INSTANCE>
The Azure Active Directory B2C instance to connect to. Use with IndividualB2C authentication. The default value is https://login.microsoftonline.com/tfp/.
- •
- -ssp|--susi-policy-id <ID>
The sign-in and sign-up policy ID for this project. Use with IndividualB2C authentication.
- •
- -rp|--reset-password-policy-id <ID>
The reset password policy ID for this project. Use with IndividualB2C authentication.
- •
- -ep|--edit-profile-policy-id <ID>
The edit profile policy ID for this project. Use with IndividualB2C authentication.
- •
- --aad-instance <INSTANCE>
The Azure Active Directory instance to connect to. Use with SingleOrg or MultiOrg authentication. The default value is https://login.microsoftonline.com/.
- •
- --client-id <ID>
The Client ID for this project. Use with IndividualB2C, SingleOrg, or MultiOrg authentication. The default value is 11111111-1111-1111-11111111111111111.
- •
- --domain <DOMAIN>
The domain for the directory tenant. Use with SingleOrg or IndividualB2C authentication. The default value is qualified.domain.name.
- •
- --tenant-id <ID>
The TenantId ID of the directory to connect to. Use with SingleOrg authentication. The default value is 22222222-2222-2222-2222-222222222222.
- •
- --callback-path <PATH>
The request path within the application’s base path of the redirect URI. Use with SingleOrg or IndividualB2C authentication. The default value is /signin-oidc.
- •
- -r|--org-read-access
Allows this application read-access to the directory. Only applies to SingleOrg or MultiOrg authentication.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- --no-https
Turns off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren’t being used for --auth.
- •
- -uld|--use-local-db
Specifies LocalDB should be used instead of SQLite. Only applies to Individual or IndividualB2C authentication.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
blazorwasm¶
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
7.0 | net7.0 |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- -ho|--hosted
Includes an ASP.NET Core host for the Blazor WebAssembly app.
- •
- -au|--auth <AUTHENTICATION_TYPE>
The type of authentication to use. The possible values are:
- •
- None - No authentication (Default).
- •
- Individual - Individual authentication.
- •
- IndividualB2C - Individual authentication with Azure AD B2C.
- •
- SingleOrg - Organizational authentication for a single tenant.
- •
- --authority <AUTHORITY>
The authority of the OIDC provider. Use with Individual authentication. The default value is https://login.microsoftonline.com/.
- •
- --aad-b2c-instance <INSTANCE>
The Azure Active Directory B2C instance to connect to. Use with IndividualB2C authentication. The default value is https://aadB2CInstance.b2clogin.com/.
- •
- -ssp|--susi-policy-id <ID>
The sign-in and sign-up policy ID for this project. Use with IndividualB2C authentication.
- •
- --aad-instance <INSTANCE>
The Azure Active Directory instance to connect to. Use with SingleOrg authentication. The default value is https://login.microsoftonline.com/.
- •
- --client-id <ID>
The Client ID for this project. Use with IndividualB2C, SingleOrg, or Individual authentication in standalone scenarios. The default value is 33333333-3333-3333-33333333333333333.
- •
- --domain <DOMAIN>
The domain for the directory tenant. Use with SingleOrg or IndividualB2C authentication. The default value is qualified.domain.name.
- •
- --app-id-uri <URI>
The App ID Uri for the server API you want to call. Use with SingleOrg or IndividualB2C authentication. The default value is api.id.uri.
- •
- --api-client-id <ID>
The Client ID for the API that the server hosts. Use with SingleOrg or IndividualB2C authentication. The default value is 11111111-1111-1111-11111111111111111.
- •
- -s|--default-scope <SCOPE>
The API scope the client needs to request to provision an access token. Use with SingleOrg or IndividualB2C authentication. The default value is user_impersonation.
- •
- --tenant-id <ID>
The TenantId ID of the directory to connect to. Use with SingleOrg authentication. The default value is 22222222-2222-2222-2222-222222222222.
- •
- -r|--org-read-access
Allows this application read-access to the directory. Only applies to SingleOrg authentication.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- -p|--pwa
produces a Progressive Web Application (PWA) supporting installation and offline use.
- •
- --no-https
Turns off HTTPS. This option only applies if Individual, IndividualB2C, or SingleOrg aren’t being used for --auth.
- •
- -uld|--use-local-db
Specifies LocalDB should be used instead of SQLite. Only applies to Individual or IndividualB2C authentication.
- •
- --called-api-url <URL>
URL of the API to call from the web app. Only applies to SingleOrg or IndividualB2C authentication without an ASP.NET Core host specified. The default value is https://graph.microsoft.com/v1.0/me.
- •
- --calls-graph
Specifies if the web app calls Microsoft Graph. Only applies to SingleOrg authentication.
- •
- --called-api-scopes <SCOPES>
Scopes to request to call the API from the web app. Only applies to SingleOrg or IndividualB2C authentication without an ASP.NET Core host specified. The default is user.read.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
web¶
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option not available in .NET Core 2.2 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
3.0 | netcoreapp3.0 |
2.1 | netcoreapp2.1 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --no-https
Turns off HTTPS.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
mvc, webapp¶
- •
- -au|--auth <AUTHENTICATION_TYPE>
The type of authentication to use. The possible values are:
- •
- None - No authentication (Default).
- •
- Individual - Individual authentication.
- •
- IndividualB2C - Individual authentication with Azure AD B2C.
- •
- SingleOrg - Organizational authentication for a single tenant.
- •
- MultiOrg - Organizational authentication for multiple tenants.
- •
- Windows - Windows authentication.
- •
- --aad-b2c-instance <INSTANCE>
The Azure Active Directory B2C instance to connect to. Use with IndividualB2C authentication. The default value is https://login.microsoftonline.com/tfp/.
- •
- -ssp|--susi-policy-id <ID>
The sign-in and sign-up policy ID for this project. Use with IndividualB2C authentication.
- •
- -rp|--reset-password-policy-id <ID>
The reset password policy ID for this project. Use with IndividualB2C authentication.
- •
- -ep|--edit-profile-policy-id <ID>
The edit profile policy ID for this project. Use with IndividualB2C authentication.
- •
- --aad-instance <INSTANCE>
The Azure Active Directory instance to connect to. Use with SingleOrg or MultiOrg authentication. The default value is https://login.microsoftonline.com/.
- •
- --client-id <ID>
The Client ID for this project. Use with IndividualB2C, SingleOrg, or MultiOrg authentication. The default value is 11111111-1111-1111-11111111111111111.
- •
- --domain <DOMAIN>
The domain for the directory tenant. Use with SingleOrg or IndividualB2C authentication. The default value is qualified.domain.name.
- •
- --tenant-id <ID>
The TenantId ID of the directory to connect to. Use with SingleOrg authentication. The default value is 22222222-2222-2222-2222-222222222222.
- •
- --callback-path <PATH>
The request path within the application’s base path of the redirect URI. Use with SingleOrg or IndividualB2C authentication. The default value is /signin-oidc.
- •
- -r|--org-read-access
Allows this application read-access to the directory. Only applies to SingleOrg or MultiOrg authentication.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- --no-https
Turns off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren’t being used.
- •
- -uld|--use-local-db
Specifies LocalDB should be used instead of SQLite. Only applies to Individual or IndividualB2C authentication.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option available since .NET Core 3.0 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
3.0 | netcoreapp3.0 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --use-browserlink
Includes BrowserLink in the project. Option not available in .NET Core 2.2 and 3.1 SDK.
- •
- -rrc|--razor-runtime-compilation
Determines if the project is configured to use Razor runtime compilation in Debug builds. Option available since .NET Core 3.1.201 SDK.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
angular, react¶
- •
- -au|--auth <AUTHENTICATION_TYPE>
The type of authentication to use. Available since .NET Core 3.0 SDK.
The possible values are:
- •
- None - No authentication (Default).
- •
- Individual - Individual authentication.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --no-https
Turns off HTTPS. This option only applies if authentication is None.
- •
- -uld|--use-local-db
Specifies LocalDB should be used instead of SQLite. Only applies to Individual or IndividualB2C authentication. Available since .NET Core 3.0 SDK.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option not available in .NET Core 2.2 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
3.0 | netcoreapp3.0 |
2.1 | netcoreapp2.0 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
reactredux¶
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option not available in .NET Core 2.2 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
3.0 | netcoreapp3.0 |
2.1 | netcoreapp2.0 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --no-https
Turns off HTTPS.
- •
- --kestrelHttpPort
Port number to use for the HTTP endpoint in launchSettings.json.
- •
- --kestrelHttpsPort
Port number to use for the HTTPS endpoint in launchSettings.json. This option is not applicable when the parameter no-https is used (but no-https is ignored when an individual or organizational authentication setting is chosen for --auth).
* * * * *
razorclasslib¶
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- -s|--support-pages-and-views
Supports adding traditional Razor pages and Views in addition to components to this library. Available since .NET Core 3.0 SDK.
* * * * *
webapiaot¶
Creates a web API project with AOT publish enabled. For more information, see Native AOT deployment and The Web API (Native AOT) template.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
8.0 | net8.0 |
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
webapi¶
- •
- -au|--auth <AUTHENTICATION_TYPE>
The type of authentication to use. The possible values are:
- •
- None - No authentication (Default).
- •
- IndividualB2C - Individual authentication with Azure AD B2C.
- •
- SingleOrg - Organizational authentication for a single tenant.
- •
- Windows - Windows authentication.
- •
- --aad-b2c-instance <INSTANCE>
The Azure Active Directory B2C instance to connect to. Use with IndividualB2C authentication. The default value is https://login.microsoftonline.com/tfp/.
- •
- -minimal|--use-minimal-apis
Create a project that uses the ASP.NET Core minimal API. Default is false, but this option is overridden by --controllers. Since the default for --controllers is false, entering dotnet new webapi without specifying either option creates a minimal API project.
- •
- -ssp|--susi-policy-id <ID>
The sign-in and sign-up policy ID for this project. Use with IndividualB2C authentication.
- •
- --aad-instance <INSTANCE>
The Azure Active Directory instance to connect to. Use with SingleOrg authentication. The default value is https://login.microsoftonline.com/.
- •
- --client-id <ID>
The Client ID for this project. Use with IndividualB2C or SingleOrg authentication. The default value is 11111111-1111-1111-11111111111111111.
- •
- --controllers, --use-controllers
Whether to use controllers instead of minimal APIs. If both this option and -minimal are specified, this option overrides the value specified by -minimal. Default is false.
- •
- --domain <DOMAIN>
The domain for the directory tenant. Use with IndividualB2C or SingleOrg authentication. The default value is qualified.domain.name.
- •
- --tenant-id <ID>
The TenantId ID of the directory to connect to. Use with SingleOrg authentication. The default value is 22222222-2222-2222-2222-222222222222.
- •
- -r|--org-read-access
Allows this application read-access to the directory. Only applies to SingleOrg authentication.
- •
- --exclude-launch-settings
Excludes launchSettings.json from the generated template.
- •
- --no-openapi
Turns off OpenAPI (Swagger) support. AddSwaggerGen, UseSwagger, and UseSwaggerUI aren’t called.
- •
- --no-https
Turns off HTTPS. No https launch profile is created in launchSettings.json. app.UseHsts and app.UseHttpsRedirection aren’t called in Program.cs/Startup.cs. This option only applies if IndividualB2C or SingleOrg aren’t being used for authentication.
- •
- -uld|--use-local-db
Specifies LocalDB should be used instead of SQLite. Only applies to IndividualB2C authentication.
- •
- -f|--framework <FRAMEWORK>
Specifies the framework to target. Option not available in .NET Core 2.2 SDK.
The following table lists the default values according to the SDK version number you’re using:
SDK version | Default value |
7.0 | net7.0 |
6.0 | net6.0 |
5.0 | net5.0 |
3.1 | netcoreapp3.1 |
3.0 | netcoreapp3.0 |
2.1 | netcoreapp2.1 |
To create a project that targets a framework earlier than the SDK that you’re using, see --framework for console projects earlier in this article.
- •
- --no-restore
Doesn’t execute an implicit restore during project creation.
- •
- --use-program-main
If specified, an explicit Program class and Main method will be used instead of top-level statements. Available since .NET SDK 6.0.300. Default value: false.
* * * * *
globaljson¶
- •
- --sdk-version <VERSION_NUMBER>
Specifies the version of the .NET SDK to use in the global.json file.
editorconfig¶
Creates an .editorconfig file for configuring code style preferences.
- •
- --empty
Creates an empty .editorconfig instead of the defaults for .NET.
SEE ALSO¶
- •
- dotnet new command
- •
- dotnet new list command
- •
- Custom templates for dotnet new
- •
- Create a custom template for dotnet new
- •
- Implicit using directives
2023-10-25 |